home *** CD-ROM | disk | FTP | other *** search
- {
- THOMAS GROFF
-
- > would like a unit to return the endpoints of a PIE segment. You could
- > always draw the arc invisibly and then use the GetArcCoords() procedure
- > provided in the graph unit and save yourself some time.
- }
-
- program getlegs;
- uses
- graph;
- var
- pts3 : arccoordstype; { <---- Necessary to declare this type var. }
- rad,
- startang,
- endang,
- x, y,
- gd, gm : integer;
- begin
- gd := detect;
- InitGraph(gd,gm,'e:\bp\bgi');
- cleardevice;
- x := 100;
- y := 100;
- startang := 25;
- endang := 130;
- rad := 90;
-
- setcolor(getbkcolor); { <------ Draw arc in background color. }
- arc(x, y, startang, endang, rad);
- GetArcCoords(pts3); { <----- This is what you want, look it up! }
- setcolor(white); { <----- Show your lines now.}
- line(pts3.x, pts3.y, pts3.xstart, pts3.ystart);
- line(pts3.x, pts3.y, pts3.xend, pts3.yend);
- outtextxy(50, 150, 'Press enter to see your original arc when ready...');
-
- readln;
- setcolor(yellow);
- arc(x, y, startang, endang, rad);
- outtextxy(50, 200, 'Press enter stop demo.');
- readln;
- closegraph;
- end.